<!--$Id: admin.so,v 10.17 2001/03/02 21:01:21 bostic Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB Reference Guide: Environment infrastructure</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table width="100%"><tr valign=top>
<td><b><dl><dt>Berkeley DB Reference Guide:<dd>Berkeley DB Transactional Data Store Applications</dl></b></td>
<td align=right><a href="../transapp/nested.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../transapp/deadlock.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p align=center><b>Environment infrastructure</b></p>
<p>When building transactional applications, it is usually necessary to
build an administrative infrastructure around the database environment.
There are five components to this infrastructure, and each is
supported by the Berkeley DB package in two different ways: a standalone
utility and one or more library interfaces.</p>
<p><ul type=disc>
<li>Deadlock detection: <a href="../../utility/db_deadlock.html">db_deadlock</a>,
<a href="../../api_c/lock_detect.html">DB_ENV-&gt;lock_detect</a>, <a href="../../api_c/env_set_lk_detect.html">DB_ENV-&gt;set_lk_detect</a>
<li>Checkpoints: <a href="../../utility/db_checkpoint.html">db_checkpoint</a>, <a href="../../api_c/txn_checkpoint.html">DB_ENV-&gt;txn_checkpoint</a>
<li>Database and log file archival:
<a href="../../utility/db_archive.html">db_archive</a>, <a href="../../api_c/log_archive.html">DB_ENV-&gt;log_archive</a>
<li>Log file removal: <a href="../../utility/db_archive.html">db_archive</a>, <a href="../../api_c/log_archive.html">DB_ENV-&gt;log_archive</a>
<li>Recovery procedures: <a href="../../utility/db_recover.html">db_recover</a>, <a href="../../api_c/env_open.html">DB_ENV-&gt;open</a>
</ul>
<p>When writing multithreaded server applications and/or applications
intended for download from the Web, it is usually simpler to create
local threads that are responsible for administration of the database
environment as scheduling is often simpler in a single-process model,
and only a single binary need be installed and run.  However, the
supplied utilities can be generally useful tools even when the
application is responsible for doing its own administration because
applications rarely offer external interfaces to database
administration.  The utilities are required when programming to a Berkeley DB
scripting interface because the scripting APIs do not always offer
interfaces to the administrative functionality.</p>
<table width="100%"><tr><td><br></td><td align=right><a href="../transapp/nested.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../transapp/deadlock.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p><font size=1>Copyright (c) 1996,2008 Oracle.  All rights reserved.</font>
</body>
</html>
